home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 2010 April / PCWorld0410.iso / hity wydania / Ubuntu 9.10 PL / karmelkowy-koliberek-desktop-9.10-i386-PL.iso / casper / filesystem.squashfs / usr / share / pyshared / chardet / escsm.py < prev    next >
Text File  |  2008-03-05  |  8KB  |  241 lines

  1. ######################## BEGIN LICENSE BLOCK ########################
  2. # The Original Code is mozilla.org code.
  3. #
  4. # The Initial Developer of the Original Code is
  5. # Netscape Communications Corporation.
  6. # Portions created by the Initial Developer are Copyright (C) 1998
  7. # the Initial Developer. All Rights Reserved.
  8. #
  9. # Contributor(s):
  10. #   Mark Pilgrim - port to Python
  11. #
  12. # This library is free software; you can redistribute it and/or
  13. # modify it under the terms of the GNU Lesser General Public
  14. # License as published by the Free Software Foundation; either
  15. # version 2.1 of the License, or (at your option) any later version.
  16. # This library is distributed in the hope that it will be useful,
  17. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  18. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  19. # Lesser General Public License for more details.
  20. # You should have received a copy of the GNU Lesser General Public
  21. # License along with this library; if not, write to the Free Software
  22. # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
  23. # 02110-1301  USA
  24. ######################### END LICENSE BLOCK #########################
  25.  
  26. from constants import eStart, eError, eItsMe
  27.  
  28. HZ_cls = ( \
  29. 1,0,0,0,0,0,0,0,  # 00 - 07 
  30. 0,0,0,0,0,0,0,0,  # 08 - 0f 
  31. 0,0,0,0,0,0,0,0,  # 10 - 17 
  32. 0,0,0,1,0,0,0,0,  # 18 - 1f 
  33. 0,0,0,0,0,0,0,0,  # 20 - 27 
  34. 0,0,0,0,0,0,0,0,  # 28 - 2f 
  35. 0,0,0,0,0,0,0,0,  # 30 - 37 
  36. 0,0,0,0,0,0,0,0,  # 38 - 3f 
  37. 0,0,0,0,0,0,0,0,  # 40 - 47 
  38. 0,0,0,0,0,0,0,0,  # 48 - 4f 
  39. 0,0,0,0,0,0,0,0,  # 50 - 57 
  40. 0,0,0,0,0,0,0,0,  # 58 - 5f 
  41. 0,0,0,0,0,0,0,0,  # 60 - 67 
  42. 0,0,0,0,0,0,0,0,  # 68 - 6f 
  43. 0,0,0,0,0,0,0,0,  # 70 - 77 
  44. 0,0,0,4,0,5,2,0,  # 78 - 7f 
  45. 1,1,1,1,1,1,1,1,  # 80 - 87 
  46. 1,1,1,1,1,1,1,1,  # 88 - 8f 
  47. 1,1,1,1,1,1,1,1,  # 90 - 97 
  48. 1,1,1,1,1,1,1,1,  # 98 - 9f 
  49. 1,1,1,1,1,1,1,1,  # a0 - a7 
  50. 1,1,1,1,1,1,1,1,  # a8 - af 
  51. 1,1,1,1,1,1,1,1,  # b0 - b7 
  52. 1,1,1,1,1,1,1,1,  # b8 - bf 
  53. 1,1,1,1,1,1,1,1,  # c0 - c7 
  54. 1,1,1,1,1,1,1,1,  # c8 - cf 
  55. 1,1,1,1,1,1,1,1,  # d0 - d7 
  56. 1,1,1,1,1,1,1,1,  # d8 - df 
  57. 1,1,1,1,1,1,1,1,  # e0 - e7 
  58. 1,1,1,1,1,1,1,1,  # e8 - ef 
  59. 1,1,1,1,1,1,1,1,  # f0 - f7 
  60. 1,1,1,1,1,1,1,1,  # f8 - ff 
  61. )
  62.  
  63. HZ_st = ( \
  64. eStart,eError,     3,eStart,eStart,eStart,eError,eError,# 00-07 
  65. eError,eError,eError,eError,eItsMe,eItsMe,eItsMe,eItsMe,# 08-0f 
  66. eItsMe,eItsMe,eError,eError,eStart,eStart,     4,eError,# 10-17 
  67.      5,eError,     6,eError,     5,     5,     4,eError,# 18-1f 
  68.      4,eError,     4,     4,     4,eError,     4,eError,# 20-27 
  69.      4,eItsMe,eStart,eStart,eStart,eStart,eStart,eStart,# 28-2f 
  70. )
  71.  
  72. HZCharLenTable = (0, 0, 0, 0, 0, 0)
  73.  
  74. HZSMModel = {'classTable': HZ_cls,
  75.              'classFactor': 6,
  76.              'stateTable': HZ_st,
  77.              'charLenTable': HZCharLenTable,
  78.              'name': "HZ-GB-2312"}
  79.  
  80. ISO2022CN_cls = ( \
  81. 2,0,0,0,0,0,0,0,  # 00 - 07 
  82. 0,0,0,0,0,0,0,0,  # 08 - 0f 
  83. 0,0,0,0,0,0,0,0,  # 10 - 17 
  84. 0,0,0,1,0,0,0,0,  # 18 - 1f 
  85. 0,0,0,0,0,0,0,0,  # 20 - 27 
  86. 0,3,0,0,0,0,0,0,  # 28 - 2f 
  87. 0,0,0,0,0,0,0,0,  # 30 - 37 
  88. 0,0,0,0,0,0,0,0,  # 38 - 3f 
  89. 0,0,0,4,0,0,0,0,  # 40 - 47 
  90. 0,0,0,0,0,0,0,0,  # 48 - 4f 
  91. 0,0,0,0,0,0,0,0,  # 50 - 57 
  92. 0,0,0,0,0,0,0,0,  # 58 - 5f 
  93. 0,0,0,0,0,0,0,0,  # 60 - 67 
  94. 0,0,0,0,0,0,0,0,  # 68 - 6f 
  95. 0,0,0,0,0,0,0,0,  # 70 - 77 
  96. 0,0,0,0,0,0,0,0,  # 78 - 7f 
  97. 2,2,2,2,2,2,2,2,  # 80 - 87 
  98. 2,2,2,2,2,2,2,2,  # 88 - 8f 
  99. 2,2,2,2,2,2,2,2,  # 90 - 97 
  100. 2,2,2,2,2,2,2,2,  # 98 - 9f 
  101. 2,2,2,2,2,2,2,2,  # a0 - a7 
  102. 2,2,2,2,2,2,2,2,  # a8 - af 
  103. 2,2,2,2,2,2,2,2,  # b0 - b7 
  104. 2,2,2,2,2,2,2,2,  # b8 - bf 
  105. 2,2,2,2,2,2,2,2,  # c0 - c7 
  106. 2,2,2,2,2,2,2,2,  # c8 - cf 
  107. 2,2,2,2,2,2,2,2,  # d0 - d7 
  108. 2,2,2,2,2,2,2,2,  # d8 - df 
  109. 2,2,2,2,2,2,2,2,  # e0 - e7 
  110. 2,2,2,2,2,2,2,2,  # e8 - ef 
  111. 2,2,2,2,2,2,2,2,  # f0 - f7 
  112. 2,2,2,2,2,2,2,2,  # f8 - ff 
  113. )
  114.  
  115. ISO2022CN_st = ( \
  116. eStart,     3,eError,eStart,eStart,eStart,eStart,eStart,# 00-07 
  117. eStart,eError,eError,eError,eError,eError,eError,eError,# 08-0f 
  118. eError,eError,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,# 10-17 
  119. eItsMe,eItsMe,eItsMe,eError,eError,eError,     4,eError,# 18-1f 
  120. eError,eError,eError,eItsMe,eError,eError,eError,eError,# 20-27 
  121.      5,     6,eError,eError,eError,eError,eError,eError,# 28-2f 
  122. eError,eError,eError,eItsMe,eError,eError,eError,eError,# 30-37 
  123. eError,eError,eError,eError,eError,eItsMe,eError,eStart,# 38-3f 
  124. )
  125.  
  126. ISO2022CNCharLenTable = (0, 0, 0, 0, 0, 0, 0, 0, 0)
  127.  
  128. ISO2022CNSMModel = {'classTable': ISO2022CN_cls,
  129.                     'classFactor': 9,
  130.                     'stateTable': ISO2022CN_st,
  131.                     'charLenTable': ISO2022CNCharLenTable,
  132.                     'name': "ISO-2022-CN"}
  133.  
  134. ISO2022JP_cls = ( \
  135. 2,0,0,0,0,0,0,0,  # 00 - 07 
  136. 0,0,0,0,0,0,2,2,  # 08 - 0f 
  137. 0,0,0,0,0,0,0,0,  # 10 - 17 
  138. 0,0,0,1,0,0,0,0,  # 18 - 1f 
  139. 0,0,0,0,7,0,0,0,  # 20 - 27 
  140. 3,0,0,0,0,0,0,0,  # 28 - 2f 
  141. 0,0,0,0,0,0,0,0,  # 30 - 37 
  142. 0,0,0,0,0,0,0,0,  # 38 - 3f 
  143. 6,0,4,0,8,0,0,0,  # 40 - 47 
  144. 0,9,5,0,0,0,0,0,  # 48 - 4f 
  145. 0,0,0,0,0,0,0,0,  # 50 - 57 
  146. 0,0,0,0,0,0,0,0,  # 58 - 5f 
  147. 0,0,0,0,0,0,0,0,  # 60 - 67 
  148. 0,0,0,0,0,0,0,0,  # 68 - 6f 
  149. 0,0,0,0,0,0,0,0,  # 70 - 77 
  150. 0,0,0,0,0,0,0,0,  # 78 - 7f 
  151. 2,2,2,2,2,2,2,2,  # 80 - 87 
  152. 2,2,2,2,2,2,2,2,  # 88 - 8f 
  153. 2,2,2,2,2,2,2,2,  # 90 - 97 
  154. 2,2,2,2,2,2,2,2,  # 98 - 9f 
  155. 2,2,2,2,2,2,2,2,  # a0 - a7 
  156. 2,2,2,2,2,2,2,2,  # a8 - af 
  157. 2,2,2,2,2,2,2,2,  # b0 - b7 
  158. 2,2,2,2,2,2,2,2,  # b8 - bf 
  159. 2,2,2,2,2,2,2,2,  # c0 - c7 
  160. 2,2,2,2,2,2,2,2,  # c8 - cf 
  161. 2,2,2,2,2,2,2,2,  # d0 - d7 
  162. 2,2,2,2,2,2,2,2,  # d8 - df 
  163. 2,2,2,2,2,2,2,2,  # e0 - e7 
  164. 2,2,2,2,2,2,2,2,  # e8 - ef 
  165. 2,2,2,2,2,2,2,2,  # f0 - f7 
  166. 2,2,2,2,2,2,2,2,  # f8 - ff 
  167. )
  168.  
  169. ISO2022JP_st = ( \
  170. eStart,     3,eError,eStart,eStart,eStart,eStart,eStart,# 00-07 
  171. eStart,eStart,eError,eError,eError,eError,eError,eError,# 08-0f 
  172. eError,eError,eError,eError,eItsMe,eItsMe,eItsMe,eItsMe,# 10-17 
  173. eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eItsMe,eError,eError,# 18-1f 
  174. eError,     5,eError,eError,eError,     4,eError,eError,# 20-27 
  175. eError,eError,eError,     6,eItsMe,eError,eItsMe,eError,# 28-2f 
  176. eError,eError,eError,eError,eError,eError,eItsMe,eItsMe,# 30-37 
  177. eError,eError,eError,eItsMe,eError,eError,eError,eError,# 38-3f 
  178. eError,eError,eError,eError,eItsMe,eError,eStart,eStart,# 40-47 
  179. )
  180.  
  181. ISO2022JPCharLenTable = (0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
  182.  
  183. ISO2022JPSMModel = {'classTable': ISO2022JP_cls,
  184.                     'classFactor': 10,
  185.                     'stateTable': ISO2022JP_st,
  186.                     'charLenTable': ISO2022JPCharLenTable,
  187.                     'name': "ISO-2022-JP"}
  188.  
  189. ISO2022KR_cls = ( \
  190. 2,0,0,0,0,0,0,0,  # 00 - 07 
  191. 0,0,0,0,0,0,0,0,  # 08 - 0f 
  192. 0,0,0,0,0,0,0,0,  # 10 - 17 
  193. 0,0,0,1,0,0,0,0,  # 18 - 1f 
  194. 0,0,0,0,3,0,0,0,  # 20 - 27 
  195. 0,4,0,0,0,0,0,0,  # 28 - 2f 
  196. 0,0,0,0,0,0,0,0,  # 30 - 37 
  197. 0,0,0,0,0,0,0,0,  # 38 - 3f 
  198. 0,0,0,5,0,0,0,0,  # 40 - 47 
  199. 0,0,0,0,0,0,0,0,  # 48 - 4f 
  200. 0,0,0,0,0,0,0,0,  # 50 - 57 
  201. 0,0,0,0,0,0,0,0,  # 58 - 5f 
  202. 0,0,0,0,0,0,0,0,  # 60 - 67 
  203. 0,0,0,0,0,0,0,0,  # 68 - 6f 
  204. 0,0,0,0,0,0,0,0,  # 70 - 77 
  205. 0,0,0,0,0,0,0,0,  # 78 - 7f 
  206. 2,2,2,2,2,2,2,2,  # 80 - 87 
  207. 2,2,2,2,2,2,2,2,  # 88 - 8f 
  208. 2,2,2,2,2,2,2,2,  # 90 - 97 
  209. 2,2,2,2,2,2,2,2,  # 98 - 9f 
  210. 2,2,2,2,2,2,2,2,  # a0 - a7 
  211. 2,2,2,2,2,2,2,2,  # a8 - af 
  212. 2,2,2,2,2,2,2,2,  # b0 - b7 
  213. 2,2,2,2,2,2,2,2,  # b8 - bf 
  214. 2,2,2,2,2,2,2,2,  # c0 - c7 
  215. 2,2,2,2,2,2,2,2,  # c8 - cf 
  216. 2,2,2,2,2,2,2,2,  # d0 - d7 
  217. 2,2,2,2,2,2,2,2,  # d8 - df 
  218. 2,2,2,2,2,2,2,2,  # e0 - e7 
  219. 2,2,2,2,2,2,2,2,  # e8 - ef 
  220. 2,2,2,2,2,2,2,2,  # f0 - f7 
  221. 2,2,2,2,2,2,2,2,  # f8 - ff 
  222. )
  223.  
  224. ISO2022KR_st = ( \
  225. eStart,     3,eError,eStart,eStart,eStart,eError,eError,# 00-07 
  226. eError,eError,eError,eError,eItsMe,eItsMe,eItsMe,eItsMe,# 08-0f 
  227. eItsMe,eItsMe,eError,eError,eError,     4,eError,eError,# 10-17 
  228. eError,eError,eError,eError,     5,eError,eError,eError,# 18-1f 
  229. eError,eError,eError,eItsMe,eStart,eStart,eStart,eStart,# 20-27 
  230. )
  231.  
  232. ISO2022KRCharLenTable = (0, 0, 0, 0, 0, 0)
  233.  
  234. ISO2022KRSMModel = {'classTable': ISO2022KR_cls,
  235.                     'classFactor': 6,
  236.                     'stateTable': ISO2022KR_st,
  237.                     'charLenTable': ISO2022KRCharLenTable,
  238.                     'name': "ISO-2022-KR"}
  239.